package com.ctshk.rpc.finance.req.bill;

import com.ctshk.rpc.finance.json.FileJson;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 新增对账req
 */
@Data
@ApiModel(value = "BillCheckAddReq",description = "新增对账req")
public class BillCheckAddReq implements Serializable {

    @NotNull(message = "客户ID不能为空")
    @ApiModelProperty(value = "客户ID",required = true)
    private Long customerId;

    @NotNull(message = "客户名称不能为空")
    @ApiModelProperty(value = "客户名称",required = true)
    private String customerName;

    @NotNull(message = "期望收款时间不能为空")
    @ApiModelProperty(value = "期望收款时间",required = true)
    private LocalDateTime expectCollectionTime;

    @ApiModelProperty(value = "附件JSON")
    private List<FileJson> filesJson;

    @ApiModelProperty(value = "备注说明")
    private String remark;

    @NotNull(message = "财务收退款ID集合不能为空")
    @ApiModelProperty(value = "财务收退款ID集合",required = true)
    private List<Long> idList;

    @ApiModelProperty(value = "操作类型（1 保存 2 提交审批）")
    private Integer type;

    @ApiModelProperty(value = "用户ID")
    private Long userId;
}
